// 作业
// 一、实现名单随机排序, 并且将随机的名单推进新数组里
// 需求:
// 1、随机名单不重复
// 2、名单长度需要和随机名单的数组长度统一
// 例如:
//  名单 =  ["同学1", "同学2", "同学3"]
//  随机名单 =  ["同学3", "同学1", "同学2"]
let arr1 = ['吴松镇', '严伟鹏', '黄星海', '陈伟庭'];
function fn1(arr) {
  let newarr1 = [];
  let numarr = [];
  for (let i = 0; i < arr.length; i++) {
    let num = Math.floor(Math.random() * arr.length);
    if (!numarr.includes(num)) {
      numarr.push(num);
    } else {
      i--;
    }
    numarr.map(function (value) {
      newarr1[i] = arr[value];
    });
  }
  return newarr1;
}
let arr1Res = fn1(arr1);
console.log('arr1Res', arr1Res);

// 二、 实现2023年当前时间距离双十一倒计时功能
// 需求:
// 1、 时间需要动态更新, 实现倒计时(数据显示在页面或者控制台都可)
// 2、 时间为个位数的时候需要补零， 例如： 1 秒 -------> 01 秒
// 3、如果活动结束, 就不再倒计时,并且显示:"xxxx年活动已经结束!";

// 例如: 距离双十一活动倒计时还有:xxxx年xx月xx日xx时xx分xx秒
let doubleEleven = new Date('2023 11 11 GMT+0800');
let year = 0;
let month = 0;
let day = 0;
let hour = 0;
let minute = 0;
let second = 0;
function fn2() {
  let date = new Date(Date.now());
  let remainTime = (doubleEleven.getTime() - date.getTime()) / 1000;

  year = Math.floor(remainTime / (60 * 60 * 24 * 365))
    .toString()
    .padStart(2, '0');
  month = Math.floor((remainTime / (60 * 60 * 24 * 30)) % 12)
    .toString()
    .padStart(2, '0');
  day = Math.floor((remainTime / (60 * 60 * 24)) % 30)
    .toString()
    .padStart(2, '0');
  hour = Math.floor((remainTime / (60 * 60)) % 24)
    .toString()
    .padStart(2, '0');
  minute = Math.floor((remainTime / 60) % 60)
    .toString()
    .padStart(2, '0');
  second = Math.floor(remainTime % 60)
    .toString()
    .padStart(2, '0');

  console.log(
    '距离双十一活动倒计时还有:' +
      year +
      '年' +
      month +
      '月' +
      day +
      '日 ' +
      hour +
      '时' +
      minute +
      '分' +
      second +
      '秒'
  );
}
let nowTime = setInterval(function () {
  fn2();
  if (
    Math.floor(doubleEleven.getTime() / 1000) == Math.floor(Date.now() / 1000)
  ) {
    console.log('2023年活动结束');
    clearInterval(nowTime);
  }
}, 1000);
